//
// Created by HP on 2025/11/19.
//

#ifndef FLIGHTSERVER_CHECK_H
#define FLIGHTSERVER_CHECK_H

#include "Model.h"
#include <string>

// 检票状态常量定义
class CheckStatus {
public:
    static const std::string NotChecked;
    static const std::string Checked;
    static const std::string Cancelled;
};

// 检票信息， 关联检票口，车票
class Check : public Model{
public:
    std::string id;
    std::string point_id;
    std::string ticket_id;
    std::string station_id;
    std::string status;
    std::string createdAt;

    Check() ;

    void bind(const std::string& key, const std::string& value);

    bool save();
    
    // Getter methods
    std::string getId() const { return id; }
    std::string getPointId() const { return point_id; }
    std::string getTicketId() const { return ticket_id; }
    std::string getStatus() const { return status; }
    std::string getCreatedAt() const { return createdAt; }
    
    // Setter methods
    void setId(const std::string& newId) { id = newId; }
    void setPointId(const std::string& newPointId) { point_id = newPointId; }
    void setTicketId(const std::string& newTicketId) { ticket_id = newTicketId; }
    void setStatus(const std::string& newStatus) { status = newStatus; }
};


#endif //FLIGHTSERVER_CHECK_H
